﻿var tableName = "";
var itemsPerPage = 0;
var currentPage = 1;
var pages = 0;
var inited = false;
var alertado = false;
$(document).ready(main);


var accionEjecutar;
function main() {
  
        
        var loc = window.location;
        var pathName = loc.pathname.substring(loc.pathname.lastIndexOf('/') + 1,100);
       
        if (pathName == "RegistrarReunion") {
            ejecutarPorDafaultR();

  $("#fechaMod").datepicker({ dateFormat: 'dd/mm/yy' });
  $("#fechaInicio").datepicker({ dateFormat: 'dd/mm/yy' });
  $("#fechaFin").datepicker({ dateFormat: 'dd/mm/yy' });
  $("#botonRegistrar").click(function () {

      generarTablaModificar();
      var lugar;
      var fecha;


      $("#tablaDinamica  input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {

          switch (index2) {

              case 3:
                  fecha = $(this).text();
                  break;
              case 4:
                  lugar = $(this).text();
                  break;


          }
      })


      $("#fechaMod").val(fecha);
      $("#lugarMod").val(lugar);
      $("#dialog-form").dialog("open");

  });

       $("#agregarFilaMod").click(function () {

           agregarFilaMod();


       });
   $("#botonCancelar").click(function () {

       window.history.back();

   });

 
   $("#botonBuscar").click(function () {
       buscarConvocatoria();

   });
} else {
    $("#fechaMod").datepicker({ dateFormat: 'dd/mm/yy' });

   
    ejecutarPorDafault();
  





    $("#botonEliminar").click(function () {



    });

  
     


        }

       
   
   

   
}

function agregarFila(){
 if ($("#resultados tbody").length > 0) {


     $('<tr><td><input type="text" value="" "></td><td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td></tr>').appendTo("#resultados tbody");
}
else{
    $('<tr><td><input id="R1" name="R1" type="radio" value="2" style="width:30px;" /></td><td><div class="text"></div></td><td>2</td><td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td><td><input type="text" value="" "></td></tr>').appendTo("#resultados");
}
}
function agregarFilaMod() {
    if ($("#resultadosModificados tbody").length > 0) {


        $('<tr><td><input type="text" value=""><td><input type="text" value=""></td><td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td></tr>').appendTo("#resultadosModificados tbody");
    }
    else {
        $('<tr><td><input type="text" value=""><td><input id="R1" name="R1" type="radio" value="2" style="width:30px;" /></td><td><div class="text"></div></td><td>2</td><td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td><td><input type="text" value="" "></td></tr>').appendTo("#resultadosModificados");
    }
}


function generarTabla(){


            var escritor = "";

       

            escritor += '<table id="resultados"><thead><tr><th>Tema</th><th>Eliminar</th></tr></thead>';

            escritor += "<tbody>";

          
                //entonces recorremos la lista y vamos creando <td> pa cada uno

                //lista[i] es lo mismo que item

                escritor += "<tr>";
                escritor += '<td><input type="text" value="" "></td>';
                escritor += '<td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td>';
                
             
                escritor += "</tr>";

                 escritor += "<tr>";
                 escritor += '<td><input type="text" value="" "></td>';
                 escritor += '<td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td>';
                
         
                escritor += "</tr>";

 escritor += "<tr>";
                   escritor += '<td><input type="text" value="" "></td>';
                 escritor += '<td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td>';
                 escritor += "</tr>";

 escritor += "<tr>";
                escritor += '<td><input type="text" value="" "></td>';
                escritor += '<td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td>';
                
                escritor += "</tr>";

  
            //has el cierre del <tbody>

            escritor += "</toby>";

            //hay qu probar pa ver que imprime, va a salir hasta el webo porque el formato de la tabla esta mal

            escritor += "</table>";
            
            $("#tablaDinamica").html(escritor);
            $("#tablaDinamica").show();

}




function generarTablaModificar() {



    var nro;
    var tipo;
    var enviar2;

    $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {

        switch (index2) {

            case 0:
                tipo = $(this).text();
                break;
            case 1:
                nro = $(this).text();
                break;


        }
    })

     enviar2 = {
        id_convocatoria: nro,
        fecha: $("#fecha").val(),        
        lugar: $("#lugar").val(),
        id_edificio: 2

    }


   
    var jsonData = JSON.stringify(enviar2);
   
    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "buscarTema",
        success: function (data) {








            var escritor = "";

            var lista = data.listaTema;

            escritor += '<table id="resultadosModificados"><thead><tr><th>Conclusion</th><th>Tema</th><th>Eliminar</th></tr></thead>';

            escritor += "<tbody>";


            //entonces recorremos la lista y vamos creando <td> pa cada uno

            //lista[i] es lo mismo que item
            $.each(lista, function (i, item) {

                escritor += "<tr>";
                escritor += '<td><input type="text" value="" ></td>';
                escritor += '<td><input type="text" value=' + item + ' ></td>';
                escritor += '<td><input type="button" value="Eliminar" onClick="$(this).parent().parent().remove();"></td>';


                escritor += "</tr>";


            });

            //has el cierre del <tbody>

            escritor += "</toby>";

            //hay qu probar pa ver que imprime, va a salir hasta el webo porque el formato de la tabla esta mal

            escritor += "</table>";

            $("#tablaDinamicaModificar").html(escritor);
            $("#tablaDinamicaModificar").show();
        }
    });


}

//function cargarTemas() {

//    $.ajax({
//        type: "POST",
//        contentType: "application/json; charset=utf-8",
//        url: "buscarTema",
//        success: function (data) {
//            //            var cargo = data.cargo;



//            //console.log(data);

//            var lista = data.listaTema;

//            var texto;
//            $("#multi").find('option').remove().end().append("<option></option>");
//            $.each(lista, function (i, item) {
//                $("#multi").append("<option value = \"" + item.id + "\">" + item.nombre + "</option>");
//            });

//            $("#multi").dropdownchecklist({ emptyText: "Seleccion un tema ...", width: 150 });


//        }

//    });

//}






function nuevo() {

 
    //  alert($("#multi").val());
    fv = new formValidator();
    document.getElementById("errorLugar").innerHTML = "";
    document.getElementById("errorFecha").innerHTML = "";
    document.getElementById("errorTema").innerHTML = "";
    var error = "0";
    if ($.trim($("#lugar").val()) == "") {

        error = "1";
        document.getElementById("errorLugar").innerHTML = "* este campo es obligatorio";

    }

    if (fv.isEmpty(document.getElementById("fecha").value)) {
        error = "1";

        document.getElementById("errorFecha").innerHTML = "* este campo es obligatorio";

    } else {
        var now = new Date();

        var dt = ($("#fecha").val() || "").split(/[\.\/\-]/g);
        // date needs at least date, month and year
        
        // create date using dd mm yyyy template
        var fecha = new Date(parseInt(dt[2], 10), parseInt(dt[1], 10) - 1, parseInt(dt[0], 10));
        //

        
//        fecha.set
        //alert(fecha + now);
        //alert(fecha.getTime() + "-" + now.getTime());
        if (fecha.getTime() < now.getTime()) {
            error = "1";
            document.getElementById("errorFecha").innerHTML = "la fecha no puede ser menor al dia de hoy";
        }
    }

    //  alert("paso")
    var tema = "";
    $("#resultados td").each(function (i, o) {
        var value = ($(":first-child", this).is(":input"))
    ? $(":first-child", this).val()
    : (($(this).text() != "") && ($(this).text() != "Eliminar"))
      ? $(this).text()
      : $(this).html();
        if ((value != "" && (value != "Eliminar"))) {
            tema = tema + "|" + value
        }

    });

    if ($.trim(tema) == "") {
        document.getElementById("errorTema").innerHTML = "Seleccione por lo menos un tema.";
        error = "1";
    }



   // alert(error);
    if (error == "0") {
//        if ($("#multi :selected").length()== "0") {

//            var question = confirm("Esta seguro que desea continuar sin seleccionar ningun tema?, presione OK para continuar");

//            if (question != 0) { }
//            else { return true; }
//        }


    }
    else {
        //fv.displayErrors();
        // alert("salio")
        return false;
    }


    //alert("sem manda a grabar");
//    var va = $("#multi option:selected").text();

//    var optVals = [];
//    $('select option').each(function (i) {
//        optVals.push($(this).attr('value'));
//    });
//   var va =optVals.join('|');
    
//    var va = "";


//     $('#multi > :selected').each(function() {
//            va=va + $(this).val() + "|";   // using text() here, because the 
//        }); 
//  //  alert("sem manda a grabar");
    //    alert(va);
 
 var id_con;

    $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {

        switch (index2) {

            case 0:
                id_con = $(this).text();
                break;
            


        }
    })

    var enviar = {

        fecha: $("#fechaMod").val(),
        temas:tema,
        lugar: $("#lugarMod").val(),
        id_edificio: 2,
        id_convocatoria:id_con,
        conclusiones: $("#conclusiones").val()



    }

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "insertarReunion",
        success: function (data) {

            alert(data.mensaje);
            $("#fecha").val("");
            $("#lugar").val("");
            generarTabla();


        }
    });


 
    

}



function buscarConvocatoria() {

    document.getElementById("errorFechaInicio").innerHTML = "";
    if ((Date.parse($("#fechaInicio").val()) > Date.parse($("#fechaFin").val())) && $("#fechaFin").val() != "01/01/0001 12:00:00 AM" && $("#fechaInicio").val() != "01/01/0001 12:00:00 AM") {
        document.getElementById("errorFechaInicio").innerHTML = "La fecha de inicio del periodo es mayor que la fecha final";
    }

    var enviar = {

        fechaInicial: $("#fechaInicio").val(),
        lugar: $("#lugar").val(),
        fechaFinal: $("#fechaFin").val()


    }

    var jsonData = JSON.stringify(enviar);


    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "buscarConvocatoria",
        success: function (data) {
            var lista = data.listaConvocatoria;


            var escritor = "";

            //dentro de la variable escritor vamos a meter todo lo que queremos mostrar en nuestro view

            escritor += '<table id="resultados"><thead><tr><th>---</th><th>Id_Convocatoria</th><th>ID_JuntaPropietario</th><th>Lugar</th><th>Fecha</th></tr></thead>';

            escritor += "<tbody>";

            $.each(lista, function (i, item) {
                //entonces recorremos la lista y vamos creando <td> pa cada uno

                //lista[i] es lo mismo que item

                escritor += "<tr>";

                //averiguate como era la estructura de la tabla
                escritor += '<td><input id="R1" name="R1" type="radio" value="2" style="width:30px;" /></td>';
                escritor += '<td><div class="text">' + item.id_convocatoria + '</div></td>';
                escritor += '<td>' + item.id_juntaPropietario + '</td>';
                escritor += '<td>' + item.fecha + '</td>';
                escritor += '<td>' + item.lugar + '</td>';
                escritor += "</tr>";

                
            });

            //has el cierre del <tbody>

            escritor += "</toby>";

            //hay qu probar pa ver que imprime, va a salir hasta el webo porque el formato de la tabla esta mal

            escritor += "</table>";

            $("#tablaDinamica").html(escritor);
            $("#tablaDinamica").show();

            setearValores('resultados', 10);
            init();
            showPageNav('pager', 'NavPosicion');
            showPage(1);
        }
    });


}








function ejecutarPorDafaultR() {
    // alert("salio");


    $("#dialog-form").dialog({

        autoOpen: false,
        height: 600,
        width: 850,
        modal: true,
        buttons: {
            "Aceptar": function () {



                Modificar();




            },
            Cancel: function () {

                $(this).dialog("close");
            }
        },
        close: function () {

        }
    });

   
}







//PAGINACION DE TABLA
function setearValores(tableNameP, itemsPerPageP) {
    tableName = tableNameP;
    itemsPerPage = itemsPerPageP;
}
function showRecords(from, to) {
    var rows = document.getElementById(tableName).rows;
    // i starts from 1 to skip table header row
    for (var i = 1; i < rows.length; i++) {
        if (i < from || i > to)
            rows[i].style.display = 'none';
        else
            rows[i].style.display = '';
    }
}

function showPage(pageNumber) {
    if (!inited) {
        alert("Error 1 !");
        return;
    }

    var oldPageAnchor = document.getElementById('pg' + currentPage);
    oldPageAnchor.className = 'pg-normal';

    currentPage = pageNumber;
    var newPageAnchor = document.getElementById('pg' + currentPage);
    newPageAnchor.className = 'pg-selected';

    var from = (pageNumber - 1) * itemsPerPage + 1;
    var to = from + itemsPerPage - 1;
    showRecords(from, to);
}

function prev() {
    if (currentPage > 1)
        showPage(currentPage - 1);
}

function next() {
    if (currentPage < pages) {
        showPage(currentPage + 1);
    }
}

function init() {
    var rows = document.getElementById(tableName).rows;
    var records = (rows.length - 1);
    pages = Math.ceil(records / itemsPerPage);
    inited = true;
}

function showPageNav(pagerName, positionId) {
    if (!inited) {
        alert("Error 2 !");
        return;
    }
    var element = document.getElementById(positionId);

    var pagerHtml = '<span onclick="prev();" class="pg-normal" style="size:12px;" onmouseover="this.style.cursor=\'pointer\'"> &#171 Anterior </span> | ';
    for (var page = 1; page <= pages; page++)
        pagerHtml += '<span id="pg' + page + '" class="pg-normal" onclick="showPage(' + page + ');"  style="size:12px;" onmouseover="this.style.cursor=\'pointer\'">' + page + '</span> | ';
    pagerHtml += '<span onclick="next();" class="pg-normal" style="size:12px;" onmouseover="this.style.cursor=\'pointer\'"> Siguiente &#187;</span>';
    pagerHtml += '<script type="text/javascript">var pager = new Pager("resultados", 3);</script>';
    element.innerHTML = pagerHtml;
}





function Modificar() {

    $("fechaMod").val("");
    $("lugarMod").val("");
    document.getElementById("errorConclusiones").innerHTML = "";
    document.getElementById("errorTemaMod").innerHTML = "";


    fv = new formValidator();
    document.getElementById("errorLugarMod").innerHTML = "";
    document.getElementById("errorFechaMod").innerHTML = "";
    document.getElementById("errorTemaMod").innerHTML = "";
    var error = "0";
    if ($.trim($("#lugarMod").val()) == "") {

        error = "1";
        document.getElementById("errorLugarMod").innerHTML = "* este campo es obligatorio";

    }

    if ($.trim($("#conclusiones").val()) == "") {

        
        document.getElementById("errorConclusiones").innerHTML = "Es recomendable que ingrese una conclusion general.";

    }
    if (fv.isEmpty(document.getElementById("fechaMod").value)) {
        error = "1";

        document.getElementById("errorFechaMod").innerHTML = "* este campo es obligatorio";

    } else {
        var now = new Date();

        var dt = ($("#fechaMod").val() || "").split(/[\.\/\-]/g);
        // date needs at least date, month and year

        // create date using dd mm yyyy template
        var fecha = new Date(parseInt(dt[2], 10), parseInt(dt[1], 10) - 1, parseInt(dt[0], 10));
       
       
        //        fecha.set
        //        fecha.setDate(Date.parse($("#fecha").val()));
     //   alert(fecha.getTime() + "-" + now.getTime());
        if (fecha.getTime() < now.getTime()) {
            error = "1";
            document.getElementById("errorFechaMod").innerHTML = "la fecha no puede ser menor al dia de hoy";
        }
    }

    //  alert("paso")




    // alert(error);
    if (error == "0") {
        //        if ($("#multi :selected").length()== "0") {

        //            var question = confirm("Esta seguro que desea continuar sin seleccionar ningun tema?, presione OK para continuar");

        //            if (question != 0) { }
        //            else { return true; }
        //        }


    }
    else {
        //fv.displayErrors();
        // alert("salio")
        return false;
    }


    //alert("sem manda a grabar");
    //    var va = $("#multi option:selected").text();

    //    var optVals = [];
    //    $('select option').each(function (i) {
    //        optVals.push($(this).attr('value'));
    //    });
    //   var va =optVals.join('|');

    //    var va = "";


    //     $('#multi > :selected').each(function() {
    //            va=va + $(this).val() + "|";   // using text() here, because the 
    //        }); 
    //  //  alert("sem manda a grabar");
    //    alert(va);
    var tema = "";
    $("#resultadosModificados td").each(function (i, o) {
        var value = ($(":first-child", this).is(":input"))
    ? $(":first-child", this).val()
    : (($(this).text() != "") && ($(this).text() != "Eliminar"))
      ? $(this).text()
      : $(this).html();
        if (( (value != "Eliminar"))) {
            tema = tema + "|" + value
        }

    });
   
    if ($.trim( tema) == "") {
        document.getElementById("errorTemaMod").innerHTML = "Ingrese por lo menos un tema.";
        return;
    }


    if ($.trim($("#conclusiones").val()) == "") {

        var question = confirm("¿No ha registrado ninguna conclusion general, desea continuar?");

        if (question != 0) { }
        else { return true; }

    }



     var nro;
    var tipo;


    $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {

        switch (index2) {

            case 0:
                tipo = $(this).text();
                break;
            case 1:
                nro = $(this).text();
                break;


        }
    })

    

    var enviar = {
id_convocatoria:nro,
        fecha: $("#fechaMod").val(),
        temas: tema,
        conclusiones: $("#conclusiones ").val(),
        lugar: $("#lugarMod").val(),
        id_edificio: 2
    }

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "insertarReunion",
        success: function (data) {

            alert(data.mensaje);
            
            generarTablaModificar();
            buscarConvocatoria();
            $("#dialog-form").dialog("close");
        }
    });



}
